# 查找当前目录下的所有源文件
# 并将名称保存到 SRC_LIST 变量
aux_source_directory (. SRC_LIST)


# 添加头文件目录
include_directories (../inc)
# include_directories (/usr/include) # 此条没用


# 添加需要链接的库文件
#[[
    相当于gcc编译命令中的 -lcurses
    相当于 link_directories 加上 target_link_libraries 两条命令。
    注意：
        1、全路径。 
        2、必须放在 add_executable 之前。 
        3、“全局命令”，对所有的add_executable命令都生效。
]]
# link_libraries(/usr/lib/x86_64-linux-gnu/libcurses.so)


# 使用给定的源文件，生成一个可执行文件
add_executable (typex ${SRC_LIST})
#add_executable (typey ${SRC_LIST}) # 可以生成多个可执行文件


# 添加需要链接的库文件
#[[ 以下两条相当于 link_libraries 命令。
    不同之处在于：
        1、target_link_libraries 必须在 add_executable 之后。link_directories无所谓。
        2、target_link_libraries 是“局部命令”，仅对typex生效。
]]
# 添加需要链接的库文件目录
link_directories(/usr/lib/x86_64-linux-gnu)
# 添加需要链接的库文件
target_link_libraries(typex curses)


# EXECUTABLE_OUTPUT_PATH ：目标二进制可执行文件的存放位置
# PROJECT_SOURCE_DIR：工程的根目录
set (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)